@echo off
chcp 65001 >nul
echo ==========================================
echo 启动仓库3D系统服务（后台模式）
echo ==========================================

REM 设置工作目录
set WORKSPACE=%~dp0
cd /d "%WORKSPACE%"

REM 启动数据库服务（最先启动，确保数据库初始化完成）
chcp 65001 >nul
echo 正在后台启动数据库服务...
start "Database Service" /min cmd /c "cd /d %~dp0database-service && node start-db-service.js >nul 2>&1"

REM 等待数据库服务启动
timeout /t 1 /nobreak >nul

REM 启动队列服务（依赖数据库服务初始化完成）
echo 正在后台启动队列服务...
start "Queue Service" /min cmd /c "cd /d %~dp0queue-service && npm start >nul 2>&1"

REM 等待队列服务启动
timeout /t 1 /nobreak >nul

REM 启动后端API服务器（依赖队列服务）
chcp 65001 >nul
echo 正在后台启动后端API服务器...
start "Backend API Server" /min cmd /c "cd /d %~dp0server && npm start >nul 2>&1"

REM 启动PLC服务
echo 正在后台启动PLC服务...
start "PLC Service" /min cmd /c "cd /d %~dp0plc-service && npm start >nul 2>&1"

REM 等待PLC服务启动
timeout /t 1 /nobreak >nul

REM 启动规则引擎服务
echo 正在后台启动规则引擎服务...
start "Rules Engine" /min cmd /c "cd /d %~dp0rules-engine && npm start >nul 2>&1"

REM 启动Node-RED集成服务
echo 正在后台启动Node-RED服务...
start "Node-RED" /min cmd /c "cd /d %~dp0node-red-integration && npm start >nul 2>&1"

echo.
echo 正在后台启动前端服务器...
start "Frontend" /min cmd /c "cd /d %~dp0client && npm run dev >nul 2>&1"

echo.

echo 所有服务已在后台启动
chcp 65001 >nul
echo 数据库服务: 独立运行
echo 队列服务: http://localhost:3003
echo 后端API服务: http://localhost:3001
echo PLC服务: http://localhost:3002
echo 规则引擎: http://localhost:3004
echo Node-RED: http://localhost:1880
echo.
echo 主画面: http://localhost:5175
echo.
echo.
echo 按任意键关闭此窗口...
pause >nul